package com.quanyan.user.service.admin;

import com.quanyan.common.Plugin.PageObj;
import com.quanyan.user.model.vo.request.admin.ReqAuctionInfoComplainantQuery;
import com.quanyan.user.model.vo.request.admin.ReqDisploseComplainant;
import com.quanyan.user.model.vo.request.admin.ReqReserveComplainantQuery;
import com.quanyan.user.model.vo.request.admin.ReqUserComplainantQuery;
import com.quanyan.user.model.vo.response.admin.RespAuctionInfoComplainant;
import com.quanyan.user.model.vo.response.admin.RespComplainantCategory;
import com.quanyan.user.model.vo.response.admin.RespReserveComplainant;
import com.quanyan.user.model.vo.response.admin.RespUserComplainant;

import java.util.List;

/**
 * Created by hua on 2016/8/24.
 */
public interface UserComplainantService {
    /**
     * 用户投诉列表
     *
     * @param userComplainantQuery
     * @return
     */
    PageObj<List<RespUserComplainant>> queryUserComplainantList(ReqUserComplainantQuery userComplainantQuery);

    /**
     * 一口价投诉列表
     * @param reserveComplainantQuery
     * @return
     */
    PageObj<List<RespReserveComplainant>> queryReserveComplainantList(ReqReserveComplainantQuery reserveComplainantQuery);

    /**
     * 竞拍活动投诉列表
     */
    PageObj<List<RespAuctionInfoComplainant>> queryAuctionInfoComplainantList(ReqAuctionInfoComplainantQuery auctionInfoComplainantQuery);

    /**
     * 被投诉用户分类列表
     *
     * @param complainantUid
     * @return
     */
    List<RespComplainantCategory> queryComplainantCategoryList(Integer complainantUid);

    /**
     * 更新用户状态
     * @param disploseComplainant
     */
    void updateUserStatus(ReqDisploseComplainant disploseComplainant);
}
